package com.example.administrator.exkotlin.base.`object`


/**
 * 在顶层类创建一个扩展函数
 * 扩展函数:可以在不修改某个类源码的情况下，打开这个类，向其中添加方法
 * 语法： fun className.newMethodName(parms1,parms2){
 *
 *         }
 *
 *   如kotlin提供了reverse方法用于反转字符串
 *   自定义：例如以下letterCout向String类中添加一个方法lettercout计算字符串中的字母个数
 *
 * */
fun String.letterCout(): Int {
    var count = 0
    for (char in this) {
        if (char.isLetter()) {
            count++
        }
    }
    return count
}

/**
 * 扩展函数+运算符重载
 * 实现 字符串之间*一个数字等于将这个字符串复制为几次后的结果
 * 使用："xxx"*3 结果为 "xxxxxxxxx" 扩大三倍
 * 等同于 "xxx".repeat(3)
 * */
operator fun String.times(n: Int): String = repeat(n)